home *** CD-ROM | disk | FTP | other *** search
/ Gekikoh Dennoh Club 1 / Gekikoh Dennoh Club Vol. 1 (Japan).7z / Gekikoh Dennoh Club Vol. 1 (Japan) (Track 1).bin / kowin / archive / kob / kob001.lzh / manual.doc < prev    next >
Encoding:
Text File  |  1996-11-12  |  19.7 KB  |  682 lines

  1.  
  2. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  3.     こB 簡易マニュアル
  4. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  5.  
  6.  
  7.  こB は基本的に X-BASIC/ぺけ-BASIC と同じですので、文法的な解説は  
  8. X-BASIC のマニュアルに譲り、このマニュアルでは、特に X-BASIC との相違
  9. 点に主眼を置いて記すこととします。
  10.  
  11.  ですから X-BASIC をご存じでない方は、X-BASIC のマニュアルで勉強して
  12. から、またおいで頂かなくてはなりません。
  13.  
  14.  
  15.  なお、'Ko>' のマークは、Cで Ko-Window のプログラムを作ったことのあ
  16. る方向けに、「Cとはどう違うか」「こB内部ではどう処理しているか」を短
  17. くあらわしたものです。
  18.  
  19.  
  20.  
  21. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  22.     目次
  23. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  24.  
  25.     こBのインストール
  26.     こBの起動
  27.     こBのコンフィグファイル
  28.     こBの外部関数
  29.     こBで使える X-BASIC の機能
  30.     こB独自の機能
  31.     こBで拡張されたシステム変数
  32.     こBで装備されたウィンドウ関数
  33.     こBのイベント
  34.  
  35.  
  36.  
  37. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  38.     こBのインストール
  39. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  40.  
  41.  このアーカイブに含まれている
  42.  
  43.     kob.win
  44.     kob.cnf
  45.     ped.fnc
  46.     zmdfnc.fnc
  47.  
  48.  の 4つのファイルをパスを通したディレクトリに置いてください。
  49.  また、一緒に含まれているドキュメント類も、都合の良いディレクトリにコ
  50. ピーしておいた方が良いでしょう。
  51.  
  52.  続いて、X-BASIC や ぺけ-BASIC に付属している外部関数も同じディレクト
  53. リに置きます。それらを用意しなくとも最低限の動作はしますが、多くの こ
  54. B対応ソフトはそれらの外部関数を必要としていますので、不可欠と言えるで
  55. しょう。
  56.   X-BASIC の外部関数は、もちろん本体付属のシステムディスクから、ぺけ
  57. -BASIC 付属の外部関数は、ぺけ-BASIC を別途入手して下さい。
  58.  具体的にどのような外部関数が必要かは、後の「こBの外部関数」の節を参
  59. 照下さい。
  60.  
  61.  すでに X-BASIC ないし ぺけ-BASIC を使用している場合は、その同じディ
  62. レクトリに kob.win 達を置くだけで良いでしょう。
  63.  X-BASIC や ぺけ-BASIC を使用なさっていない場合も、出来るだけ専用のデ
  64. ィレクトリを作成することをお勧めします。
  65.  
  66.  
  67. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  68.     こBの起動
  69. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  70.  
  71.   Console 等から、
  72.  
  73.     kob.win (option1)(プログラム名)(option2)
  74.  
  75.   で起動します。
  76.  
  77.  
  78.   プログラム名の拡張子が省略されたら、.kob をつけて探します。
  79.  
  80.  プログラムの形式は、プログラムを先頭から記したテキスト形式で、行番号
  81. の有無は問いません。また空行などが存在しても構いません。
  82.  また、アルファベットの大文字・小文字は区別されますので御注意下さい。
  83.  
  84.  
  85.   option1 は、こB本体に与えるオプション列です。以下の物が使用出来ます。
  86.  
  87.     -f[num]        フリーエリアの大きさを KB 単位で指定する。デフォ
  88.             ルトで 128KB。
  89.     -c[cnf file name]
  90.             こBの読み込むコンフィグファイル名を指定します。
  91.             デフォルトでは、こBの起動ディレクトリにある 
  92.             kob.cnf です。
  93.     -e[deilDEIL]    こBの拡張機能の ON/OFF を指定します。アルファ
  94.             ベットの大文字で ON、小文字で OFF です。
  95.             各文字の意味は「こBのコンフィグファイル」を御
  96.             覧下さい。
  97.  
  98.     -x[num]        ウィンドウを開く X座標
  99.     -y[num]                 Y座標
  100.     -h[num]        ウィンドウの横幅
  101.     -v[num]                縦幅
  102.  
  103.   -x, -y, -h, -v で指定した値は、プログラム内から WINX 等のシステム変
  104. 数によって参照出来ます。
  105.  
  106.  
  107.   option2 は、こBプログラムに与えるオプション列です。
  108.   b_argc, b_argv() を使って、参照します。
  109.  
  110.  
  111.  
  112. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  113.     こBのコンフィグファイル
  114. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  115.  
  116.  
  117.  コンフィグファイルは起動時に読み込まれ、フリーエリアの大きさや組み込
  118. む外部関数などを指定します。
  119.  
  120.  デフォルトでは、kob.win と同じディレクトリに存在する kob.cnf ですが、
  121. オプション -c により、他のファイルを指定することも可能です。その際には、
  122. こBプログラム名よりも前で指定しなければなりません。
  123.  
  124.   kob.cnf は例えば次のような構成になっています。
  125.  
  126.     FREE   = 128
  127.     WIDTH  = 96
  128.     BEEP   = ON
  129.     CAPS   = OFF
  130.     WARN   = ON
  131.     *EXTEND = DEIL
  132.     FUNC  = stick
  133.     FUNC  = MUSICZ
  134.     FUNC  = PED
  135.     FUNC  = ZMDFNC
  136.     *FUNC  = DOSFNC
  137.  
  138.   これに見る通り、
  139.  
  140.     命令  = 引き数列
  141.  
  142.   という形式で記述することになっています。
  143.   また、行の先頭に *(アスタリスク)を置くと注釈と見なされます。
  144.   それでは、個々の命令について説明します。
  145.  
  146.  
  147. ====  FREE
  148.  
  149.   BASIC プログラムで使用するフリーエリアの大きさをキロバイト単位で設定
  150. します。
  151.   省略した場合、128 (KB) となります。
  152.  
  153.  
  154. ====  WIDTH,BEEP,CAPS
  155.  
  156.   これらの命令は無視されます。
  157.  
  158.  
  159. ====  FUNC
  160.  
  161.   組み込む外部関数をファイル名から拡張子 .FNC を略した形で指定します。
  162.   1命令につき指定出来る外部関数は1つなので、指定する外部関数の個数だ
  163. けの FUNC 命令を書く必要があります。
  164.  
  165.  
  166. ====  WARN
  167.  
  168.   ワーニングを出力するかどうかを ON, OFF で設定します。
  169.   ON でワーニングを出力し、OFF で抑えます。
  170.   省略した場合、WARN = ON となります。
  171.  
  172.  
  173. ====  EXTEND
  174.  
  175.   拡張機能を使用するかどうかを、各機能ごとにアルファベット1文字で設定
  176. します。
  177.   アルファベットと拡張機能との対応は以下の通りです。
  178.  
  179.     D : func で定義する関数の引き数に配列を使用出来る
  180.     E : 配列の定義時に、非定数の添え字の最大値を使用出来る
  181.     I : 関数呼び出し時に、変数や配列を初期化しない
  182.     L : goto の飛び先にラベルを使用出来る
  183.  
  184.  でも、拡張機能って言っても、こBはオリジナルのインタプリタなのでした
  185. ……まあ、いいや。
  186.  
  187.  
  188.  
  189. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  190.     こBの外部関数
  191. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  192.  
  193.  
  194.  こBでは X-BASIC/ぺけ-BASIC 用の外部関数が基本的にそのまま使用可能で
  195. す。ただし、Ko-Window のサーバーの処理とぶつかる物 ( MOUSE.FNC など ) 
  196. はその限りではありません。
  197.  
  198.  
  199.  ☆ 使って良い X-BASIC/ぺけ-BASIC 用外部関数 ☆
  200.  
  201.     AUDIO.FNC    X-BASIC に付属
  202.     IMAGE.FNC
  203.     MUSIC.FNC
  204.     STICK.FNC
  205.  
  206.     DOSFNC.FNC    ぺけ-BASIC に付属
  207.     IOCSFNC.FNC
  208.     LZHFNC.FNC
  209.  
  210.     MUSICZ.FNC    Z-MUSIC に付属
  211.  
  212.  
  213.  
  214. ----------------------------------------------------------------------
  215.       外部関数のインターフェースは X-BASIC 互換ですが、一
  216.     部拡張されています。
  217.      具体的には、レジスタ a3,a4 に以下のような情報が渡さ
  218.     れています。
  219.  
  220.         ・ a3 = WindowID 列
  221.  
  222.     (a3+ 0) : ウィンドウ #0 の WindowID
  223.     (a3+ 4) : ウィンドウ #1 の WindowID
  224.     (a3+ 8) : ウィンドウ #2 の WindowID
  225.        :              :
  226.     (a3+60) : ウィンドウ#15 の WindowID
  227.  
  228.  
  229.         ・ a4 = こB内部のサブルーチンエントリ列
  230.     (a4+ 0) : WindowDraw( )
  231.     (a4+ 4) : (reserve)
  232.     (a4+ 8) : (reserve)
  233.        :          :
  234. ----------------------------------------------------------------------
  235.  
  236.  
  237.  
  238. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  239.     こBで使える X-BASIC の機能
  240. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  241.  
  242.  
  243.   こBの文法および演算記号などは X-BASIC と全く同じです。
  244.   各命令・関数には若干の違いがあります。
  245.  
  246.   以下に書いてある物は、基本的に X-BASIC のものと全く同様の機能として
  247. 使えます。
  248.   label のみは ぺけ-BASIC 固有の機能です。
  249.  
  250.  
  251. ・ステートメント
  252.  
  253.     (変数定義関係)
  254.     dim
  255.     int/float/char/str
  256.  
  257.     (分岐・ループ処理関係)
  258.     if/then/else
  259.     for/next
  260.     while/endwhile
  261.     repeat/until
  262.     switch/endswitch
  263.     goto(/label)
  264.  
  265.     (プログラム関数関係)
  266.     func/endfunc
  267.     return
  268.  
  269.  
  270. ・システム変数
  271.     free
  272.     date$
  273.     day$
  274.     time$
  275.  
  276. ・標準関数
  277.     全て使えるはずです
  278.  
  279.  
  280.  これら以外の機能を使用するとエラーになります。
  281.  
  282.  
  283.  
  284. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  285.     こB独自の機能
  286. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  287.  
  288.  
  289.  X-BASIC のと同じ名前であるが、機能が異なる物は以下の通りです。
  290.  
  291.  
  292.  ・ print
  293.  
  294.  文法は X-BASIC と全く同様ですが( using も使用可能)、 Console ウィ
  295. ンドウ への出力となります。
  296.   Console が存在しない場合は無視されます。
  297.  プログラム内のパラメーターの表示など、主にプログラムのデバッグ用に使
  298. 用されるものです。
  299.  ウィンドウへの文字の表示には DrawSymbol() 関数を使用します
  300. (kofunc.doc 参照)。
  301.  
  302.  
  303.  ・ end/exit()
  304.  
  305.  こBの初期設定グローバルルーチンの終了を意味します。
  306.  プログラムの終了ではありません。
  307.  プログラムの終了には、外部から Close イベントを送る( Close ボックス
  308. をクリックする等)か、ステートメント exit() を実行して下さい。
  309.  
  310.  
  311.  ・ screen
  312.  
  313.  画面モードの変更、という意味では同じですが、パラメータは一つだけ、そ
  314. の意味は以下の通りです。
  315.  
  316.     screen [num]
  317.         [num] = 0 : 256x256
  318.             1 : 384x256
  319.             2 : 512x512
  320.             3 : 768x512
  321.             4 : 704x424
  322.             5 : 1024x424
  323.             6 : 1024x848
  324.             7 : 800x526
  325.  
  326.  
  327.  
  328. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  329.     こBで拡張されたシステム変数
  330. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  331.  
  332.  
  333. ・WINX, WINY, WINH, WINV
  334.  
  335.  起動時のオプションで指定された値を参照することが出来ます。
  336.  ウィンドウをオープンする時にこの値を使えば、コマンドラインからウィン
  337. ドウ位置を指定することの出来るアプリになります。
  338.  オプションが省略された場合、それぞれ 10, 10, 0, 0 が入っています。
  339.  代入は出来ません。
  340.  
  341.  
  342. ・ITIME
  343.  
  344.  インターバルイベント Einterval() が呼び出される間隔を 1/100 秒単位で
  345. 指定します。
  346.   デフォルトは ITIME=100 (1秒単位)です。
  347.  代入して、値を変更することが出来ます。
  348.   ITIME に負の値を代入しておけば、インターバルイベントは発生しなくなり
  349. ます。
  350.  なお、インターバルイベントについては、あとの記述を参照して下さい。
  351.  
  352.  
  353. ・info_??
  354.  
  355.  イベントが呼び出される時の情報が収められている auto システム変数です。
  356. 読み込み・書き込みともに可能です。ただし、呼び出されたイベント関数内で
  357. のみアクセス可能です。
  358.   全部で次に挙げる 16 種類あります。
  359.  
  360.     info_x, info_y, info_h, info_v, info_Rstat, info_Lstat, info_Lon,
  361.     info_Loff, info_Ron, info_Roff, info_MoveFlag, info_KeyCode,
  362.     info_ShiftStat, info_Counter, info_ComData
  363.  
  364.   起きたイベントにより各変数の意味が異なるので、個々の内容は後のイベン
  365. トの解説に譲ります。
  366.  
  367.  
  368.  
  369. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  370.     こBで装備されたウィンドウ関数
  371. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  372.  
  373.  
  374.  こBは「ウィンドウ関数」と呼ばれる以下の関数群を標準で装備しています。
  375.  
  376.     WindowOpen, WindowSimpleOpen, WindowTitleOpen,
  377.     WindowClose, WindowPop, WindowPush, WindowRedraw, WindowMove,
  378.     WindowResize, WindowGetPosition, WindowGetSize
  379.  
  380.     WindowMoveOperation, WindowResizeOperation
  381.  
  382.     PopUpMenu, IconEnt
  383.  
  384.     WindowLoadExec, UserSendExec, SendUserString, SendUserSheet,
  385.     SendUserGraphic, GetUserString, GetUserSheet, GetUserGraphic,
  386.  
  387.     DrawClear, DrawLine, DrawBox, DrawFill, DrawShadow,
  388.     DrawSymbol, DrawPut
  389.  
  390.     GraphicInit, DrawGraphicClear, DrawGraphicLine,
  391.     DrawGraphicBox, DrawGraphicFill, DrawGraphicShadow,
  392.     DrawGraphicPut
  393.  
  394.     TrumpOpen, JpaiOpen, TrumpClose, JpaiClose, DrawCard,
  395.     DrawMonoCard
  396.  
  397.     IntervalTime
  398.  
  399.  
  400.  これらは、文字通りウィンドウを操作するための関数達です。個々の詳しい
  401. 仕様は、 kofunc.doc を参照下さい。
  402.  
  403.  操作するウィンドウを指定するには、「ウィンドウナンバー」という 0 か
  404. ら始まる整数を使います。
  405.  こB上で使用されるウィンドウは、固有の「ウィンドウナンバー」を持って
  406. います。これにより、「0番のウィンドウをクリアせよ」という命令を出すこ
  407. とができます。
  408.  
  409.  現在、こBは全部で 16枚までのウィンドウを開くことが出来ますので、ウィ
  410. ンドウナンバーは 0 から 15 までです。
  411.  
  412.  
  413.   Ko> こBはポインタを持っていないので、こういう形での実装となりました。
  414.   Ko> 具体的には、ClientData にウィンドウナンバーを書き込んであります。
  415.  
  416.  
  417.  
  418. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  419.     こBのイベント
  420. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  421.  
  422.  
  423.  こBで生じるイベントは、次の 13個です。
  424.  
  425.  
  426.     Eopen        最初のオープン時に一回だけ呼び出される
  427.     Eredraw        ウィンドウを再描画する必要が生じた時呼び出される
  428.     Eclose        クローズボタン等が押された時に呼び出される
  429.     Emove        ウィンドウを移動させようとした時呼び出される
  430.     Eresize        ウィンドウをリサイズしようとした時呼び出される
  431.     Eiconify    ウィンドウをアイコン化しようとした時呼び出される
  432.     Emouse        マウスのクリックが有った時に呼び出される
  433.     Emouse_move    ウィンドウ内でマウスカーソルが動いた時呼び出される
  434.     Emouse_enter    ウィンドウ内にマウスカーソルが入ってきた時呼び出される
  435.     Emouse_out    ウィンドウからマウスカーソルが出た時呼び出される
  436.     Ekey        キーボードが押された時に呼び出される
  437.     Einterval    指定の時間ごとに呼び出される
  438.     Euser        外部からデータが転送された時に呼び出される
  439.  
  440.  
  441.  イベントは、func ~ endfunc で定義するプログラムの関数として記述しま
  442. す。これを「イベント関数」と呼びます。イベント関数名は上に挙げた一覧表
  443. の左に書かれている名前を使用します。
  444.  
  445.  
  446.  各のイベントの情報は、info_?? という形のシステム変数で渡されます。
  447.  
  448.  
  449.   プログラムでは、必ず int 型の引き数(ウィンドウナンバー)を一つ指定
  450. して下さい。指定がない場合はエラーとなります。
  451.  
  452. 例:
  453. ----------------------------------------------------------------------
  454. func Eredraw( wno )    /* wno 番のウィンドウに redraw が発生した
  455. ----------------------------------------------------------------------
  456.  
  457.  
  458.  イベント関数を終了する時に、0 を返すとデフォルトの処理が実行されます。
  459. 1 を返すと、デフォルトの処理が登録されていても、それは実行されません。
  460.   返り値を省略した場合にも、デフォルトの処理は実行されません( 1が返さ
  461. れる)。
  462.  
  463. 例:
  464. ----------------------------------------------------------------------
  465. func Emouse( wno )
  466.     if info_Lon=0 then return(0)    /* 左クリックされてなかったら
  467.                     /* デフォルトの処理実行
  468. ----------------------------------------------------------------------
  469.  
  470.   この例の場合、右クリックで標準のポップアップメニューを出す、というデ
  471. フォルトの処理が実行されるでしょう。
  472.  
  473.  
  474.  
  475.   以下に、個々のイベントを解説します。
  476.  
  477.  
  478. ================================
  479.     func Eopen( wno )
  480. ================================
  481.  
  482.   ウィンドウが最初にオープンした時に一回だけ呼び出されます。
  483.   info_x, info_y にウインドウの左上座標、info_h, info_v にウインドウの
  484. 大きさが入っています。
  485.   各ウィンドウごとの初期設定を行い、WindowRedraw() を発行するためのイ
  486. ベントですが、通常必要な処理はこBの内部で行うので、ほとんどの場合省略
  487. します。
  488.  
  489.  
  490.   Ko> デフォルト処理で、WindowRedraw()を発行します。
  491.  
  492.  
  493. ================================
  494.     func Eredraw( wno )
  495. ================================
  496.  
  497.   他のウィンドウの下敷きになっていたりなどしていたものが表に現れること
  498. で、再描画する必要が生じた時に呼び出されます。
  499.   info_x, info_y に描き直し領域の左上座標、info_h, info_v に描き直し領
  500. 域の大きさが入っています。
  501.  
  502.   通常は、ウィンドウサーバが勝手にクリッピングしてくれるので、ウィンド
  503. ウ全体を描き直せば良いです。
  504.  描き直しが複雑になって時間がかかる場合には、渡された情報を使って描き
  505. 直し領域を最小にすると、大変レスポンスが良くなります。
  506.  
  507.   このイベント関数を省略すると、おもしろすぎるので、省略してはいけませ
  508. ん。
  509.  
  510.  
  511. ================================
  512.     func Eclose( wno )
  513. ================================
  514.  
  515.   クローズボタンが押されたり、ポップアップメニューから Close を選んだ
  516. 時などに呼び出されます。
  517.   渡される情報はありません。
  518.  省略した場合、こBが開いていたウィンドウを全て閉じ、プログラムの実行
  519. を終了します。
  520.  
  521.  
  522. 例:ある条件が成立していなかったら、終了しない
  523. ----------------------------------------------------------------------
  524. func Eclose( wno )
  525.     if flag then return(0)    /* デフォルトの処理(プログラム終了)実行
  526.     return(1)        /* デフォルトの処理実行しない
  527. endfunc
  528. ----------------------------------------------------------------------
  529.  
  530.   Ko> デフォルトでは、こBの確保したメモリを開放した後
  531.   Ko> WindowConnectionClose() を実行します。
  532.  
  533.  
  534.  
  535. ================================
  536.     func Emove( wno )
  537. ================================
  538.  
  539.   ウィンドウを移動させようとした時、つまりタイトルバーをドラッグした時
  540. や、メニューから 'move' を選んで位置を決めた時に呼び出されます。
  541.  システム変数 info_x, info_y に移動先の座標が入っています。
  542.   0 を返した場合のデフォルトの処理は「指定の位置に移動」です。
  543.  
  544.  info_x, info_y の値を変更して 0 ( = デフォルトの処理を実行) を返せば、
  545. 移動先の制御が可能です。
  546.  下のように 1 ( = デフォルトの処理を実行しない) を返すだけのイベント
  547. 関数を作るとウィンドウの移動を禁止できます。
  548.  
  549. ----------------------------------------------------------------------
  550. func Emove( wno )
  551.     return(1)
  552. endfunc
  553. ----------------------------------------------------------------------
  554.  
  555.  Emove() の記述を省略した場合、自動的に移動処理を行います。
  556.  
  557.  
  558.  
  559. ================================
  560.     func Eresize( wno )
  561. ================================
  562.  
  563.   ウィンドウをリサイズしようとした時に呼び出されます。
  564.  システム変数 info_x, info_y にリサイズの左上の座標が、 info_h,
  565. info_v にリサイズされた大きさが入っています。
  566.   0 を返した場合のデフォルトの処理は「指定のサイズに変更」です。
  567.  
  568.  info_x, info_y, info_h, info_v の値を変更して 0 ( = デフォルトの処理
  569. を実行) を返せば、リサイズの制御が可能です。
  570.  Emove() と同様に 1 ( = デフォルトの処理を実行しない)を返すだけのイ
  571. ベント関数を作るとウィンドウのリサイズを禁止できます。
  572.  
  573.  Eresize() の記述を省略した場合、自動的にリサイズを行います。
  574.  
  575.  
  576.  
  577. ================================
  578.     func Eiconify( wno )
  579. ================================
  580.  
  581.   ウィンドウをアイコン化しようとした時、つまりアイコンボックスをクリ
  582. ックした時などに呼び出されます。
  583.  省略した場合、自動的にアイコン化を行います。その際のアイコン名は勝手
  584. に 'icon' となってしまいますので、きちんと自前の処理を書いたほうがよい
  585. でしょう。
  586.  Emove() と同様に 1 ( = デフォルトの処理を実行しない)を返すだけのイ
  587. ベント関数を作るとウィンドウのアイコン化を禁止できます。
  588.  
  589.  
  590.  
  591. ================================
  592.     func Emouse( wno )
  593. ================================
  594.  
  595.   マウスのボタンを押した時、離した時、押したままマウスを移動した時に呼
  596. び出されます。
  597.   info_x, info_y にマウスの座標が、info_Lstat, info_Rstat に左右のボタ
  598. ンの状態が(押していたら 1、離していたら 0)入っています。
  599.  また、info_Lon, info_Ron は左右それぞれが「押された瞬間」、
  600. info_Loff, info_Roff は「離された瞬間」のみ 1になります。
  601.   info_MoveFlag には、マウスを押したまま移動させた場合に 1が入ります。
  602.  
  603.   デフォルトの処理で、右クリックでポップアップメニューが出ます(正確に
  604. は、これは microwm.win の機能)。
  605.  
  606.  
  607.  
  608. ================================
  609.     func Emouse_move( wno )
  610.     func Emouse_enter( wno )
  611.     func Emouse_out( wno )
  612. ================================
  613.  
  614.  それぞれウィンドウ内でマウスカーソルが動いた時、ウィンドウにマウスカ
  615. ーソルが入ってきた時、ウィンドウからマウスカーソルが出た時に呼ばれます。
  616.   Emouse_move() では、 システム変数 info_x, info_y にマウスカーソルの
  617. ローカル座標が入っています。
  618.  
  619.  
  620.  
  621. ================================
  622.     func Ekey( wno )
  623. ================================
  624.  
  625.   ウィンドウ上でキーボードが押された時に呼び出されます。
  626.   info_KeyCode に入力されたキーコードが、info_ShiftStat にシフトキーの
  627. 状態が入ります。
  628.  
  629.  
  630.  
  631. ================================
  632.     func Einterval( wno )
  633. ================================
  634.  
  635.   指定の時間ごとに呼び出されます。時間の間隔はシステム変数 ITIME で指
  636. 定します。 ITIME が正の値の時は ITIME/100 秒毎に呼び出され、負の値の時
  637. は呼び出されません。
  638.  
  639.   Ko> 実際には、0 番のウィンドウの EventInterval は常に発生状態にあっ
  640.   Ko> て、こB内部で Einterval() を呼ぶかどうかを処理してます。
  641.  
  642.   このイベントはウィンドウナンバー 0 のウィンドウにのみ発生します。従っ
  643. て wno は常に 0 です。
  644.  Einterval() を発生させたい場合は、必ず 0 番のウィンドウを開くようし
  645. て下さい。逆に、Einterval() が必要ない場合には 0 番を使用しないようす
  646. れば、サーバーへの負担を少し減らす事が出来るでしょう。
  647.  
  648.   渡される情報はありません。
  649.  
  650.  
  651.  
  652. ================================
  653.     func Euser( wno )
  654. ================================
  655.  
  656.  他のウィンドウからのデータの転送があった場合に呼び出されます。
  657.  具体的には、
  658.  
  659.     ・ String  : 文字列やファイル名
  660.     ・ Sheet   : Sheet データ(モノクロ画像)
  661.     ・ Graphic : Graphic データ( 16/256/65536色画像)
  662.  
  663.  の3つのデータを受け取ることが出来ます。
  664.  
  665.  info_ComData に、上の3種類のデータのいずれが転送されたのかが入って
  666. います。
  667.  
  668.     info_ComData = 0,1,2    : String
  669.              = 3    : Sheet
  670.              = 5    : Graphic
  671.  
  672.   3種類のデータはそれぞれ受け取り方法が異なります。詳しくは関数リファ
  673. レンス kofunc.doc の GetUserString(), GetUserSheet(), GetUserGraphic()
  674. 関数の項を参照下さい。
  675.  
  676.  
  677.  
  678. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  679.     平成 8年 11月 11日        中 谷  秀 洋
  680. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  681. (EoF)
  682.